package com.autumn.sms.service.entities.mongodb;

import java.io.Serializable;
import java.util.Date;
import java.util.Map;

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;

/**
 * 短信发送数据抽象
 * 
 * @author 老码农
 *
 *         2018-01-13 17:53:06
 */
public abstract class AbstractSendData implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 5557239005087214565L;
	@Id
	private String id;
	@Indexed
	private Date sendTime;
	@Indexed
	private String messageId;
	@Indexed
	private String mobilePhone;
	@Indexed
	private String serviceId;
	@Indexed
	private String serviceAddress;
	

	@Indexed
	private String clientIp;
	private String templateCode;
	private Date eventTime;
	private Map<String, String> params;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 发送时间
	 * 
	 * @return
	 *
	 */
	public Date getSendTime() {
		return sendTime;
	}

	/**
	 * 设置发送时间
	 * 
	 * @param sendTime
	 *            发送时间
	 *
	 */
	public void setSendTime(Date sendTime) {
		this.sendTime = sendTime;
	}

	public String getMessageId() {
		return messageId;
	}

	public void setMessageId(String messageId) {
		this.messageId = messageId;
	}

	public String getMobilePhone() {
		return mobilePhone;
	}

	public void setMobilePhone(String mobilePhone) {
		this.mobilePhone = mobilePhone;
	}

	public String getServiceId() {
		return serviceId;
	}

	public void setServiceId(String serviceId) {
		this.serviceId = serviceId;
	}

	public String getServiceAddress() {
		return serviceAddress;
	}

	public void setServiceAddress(String serviceAddress) {
		this.serviceAddress = serviceAddress;
	}

	public String getClientIp() {
		return clientIp;
	}

	public void setClientIp(String clientIp) {
		this.clientIp = clientIp;
	}

	public String getTemplateCode() {
		return templateCode;
	}

	public void setTemplateCode(String templateCode) {
		this.templateCode = templateCode;
	}

	public Date getEventTime() {
		return eventTime;
	}

	public void setEventTime(Date eventTime) {
		this.eventTime = eventTime;
	}

	public Map<String, String> getParams() {
		return params;
	}

	public void setParams(Map<String, String> params) {
		this.params = params;
	}

}
